Oracle Semantics
نویسنده
چکیده
We define a Concurrent Separation Logic with first-class locks and threads for the C language, and prove its soundness in Coq with respect to a compilable operataional semantics. We define the language Concurrent C minor, an extension of the C minor language of Leroy. C minor was designed as the highest-level intermediate language in the CompCert certified ANSI C compiler, and we add to it lock, unlock, and fork statements to make Concurrent C minor, giving it a standard Pthreads style of concurrency. We define a Concurrent Separation Logic for Concurrent C minor, which extends the original Concurrent Separation Logic of O’Hearn to handle firstclass locks and threads. We then prove the soundness of the logic with respect to the operational semantics of the language. First, we define an erased concurrent operational semantics for Concurrent C minor that is a reasonable abstraction for concurrent execution on a real machine. Second, we define a new modal substructural logic which we use as the model for assertions in Concurrent Separation Logic. Third, we define an unerased
منابع مشابه
Oracles and Connuence | a Fixpoint Semantics for Concurrent Constraint Programming
We consider the problem of giving a xpoint semantics for a parallel and non-deterministic programming language with fairness and arbitrary recur-sion, in which both nite and innnite computations are taken into account. We rst deene an operational semantics based on oracles ((nite and inn-nite strings over a countable alphabet), in which the non-deterministic choices are determined by the oracle...
متن کاملUsing Denotational Semantics in the Validation of the Compiler for a Mutation-Oriented Language
Systems which produce large amount of output are very difficult to teste due to the expense of checking whether the outputs are correct or not. In other words, there is no simple oracle that can establish the acceptance of the outputs. For such systems, one plausible alternative is to use a second implementation as an automated oracle. The automated oracle is then run with the test cases applie...
متن کاملOracle Semantics for Prolog
This paper proposes to specify semantic de nitions for logic programming languages such as Prolog in terms of an oracle which speci es the control strategy and identi es which clauses are to be applied to resolve a given goal. The approach is quite general. It is applicable to Prolog to specify both operational and declarative semantics as well as other logic programming languages. Previous sem...
متن کاملQuerying in EL with Nonmonotonic Rules
A general top-down algorithmization for the WellFounded MKNF Semantics a semantics for combining rules and ontologies was recently defined based on an extension of SLG resolution for Logic Programming with an abstract oracle to the parametric ontology language. Here we provide a concrete oracle with practical usage, namely for EL which is tractable for reasoning tasks like subsumption. We show ...
متن کاملA Query-driven Procedures for Hybrid MKNF Knowledge Bases
Hybrid MKNF knowledge bases are one of the most prominent tightly integrated combinations of openworld ontology languages with closed-world (non-monotonic) rule paradigms. Based on the logic of minimal knowledge and negation as failure (MKNF), the definition of Hybrid MKNF is parametric on the description logic (DL) underlying the ontology language, in the sense that non-monotonic rules can ext...
متن کاملOracle game semantics for the nu-calculus
The long-standing problem of giving fully abstract semantics to the nu-calculus have been solved only recently with game models à la Hyland-Ong in the universe of Fraenkel-Mostowski sets. However, these models are still quite complicated, mainly because they aim to ensure at once both the equivariance of strategies, and the possibility of having strategies generating new names. In this paper, w...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2008